home *** CD-ROM | disk | FTP | other *** search
-
- ( Takes a bunch of objects and distributes the distances between COGs of
- ( subsequent objects.
-
- "r3d3:rpl/sys/vectors.rpl" LOAD
-
- FVARIABLE fLen
- VVARIABLE vTmp
-
- : Distr ( 0 aObjects .... )
- iOP_COG O_PROP vTmp V!
- BEGIN
- DUP
- WHILE
- DUP iOP_COG O_PROP
- vTmp V@ VSUB VNORM
- fLen F@ VMUL
- vTmp V@ VADD vTmp V!
- 0 SWAP vTmp V@ 0 M_MOVECOG
- REPEAT
- DROP
- ;
-
- ( User interface
- : Distribute
- fLen "Distance between Objects" GET_FLT
- IF
- 1 O_LOCK
- O_GETSEL
- Distr
- 0 O_LOCK
- ENDIF
- ;
-